This specification relates to techniques for safely executing native code modules, and particularly to safe execution of Thumb based native code modules within ARM instruction set architectures.
Often users attempt to execute machine code of unknown provenance on their computer devices. Installing and executing such native applications may produce unwanted side effects, for example, by modifying files on the computing device or engaging in computation or communication outside of the tasks or features requested by the user.